package algorithm.leetcode.simple;
/*
 给定一个 haystack 字符串和一个 needle 字符串，在 haystack 字符串中找出 needle
 字符串出现的第一个位置 (从0开始)。如果不存在，则返回  -1。
 */

/**
 * @author jack.wu
 * @version 1.0
 * @date 2020/9/18
 */
public class Question28 {

    public static void main(String[] args) {

    }

    public int strStr(String haystack, String needle) {
        char[] charArray = haystack.toCharArray();
        char[] subCharArray = needle.toCharArray();

        int len = charArray.length;
        int subLen = subCharArray.length;
        int i = 0;
        int j = 0;

        while (i < len && j < subLen) {
            if (charArray[i] == subCharArray[j]){
                i++;
                j++;
            }else {
                i = i - j + 1;
                j = 0;
            }
        }
        if (j == subLen){
            return i - j;
        }
        return  -1;
    }
}
